export enum ReplyStatus {
    IS_COMMENT = 0, // "评论", "这是一条评论"),

    HIDDEN = 1, // "隐藏", "被隐藏"),

    HAS_COMMENT = 2, // "有评论", "有评论"),

    DELAY_ACTION = 3, // "延时", "是否有延时操作"),

    EXTRA_USER_INFO = 4, // "更多", "更多用户信息"),

    REPORTED = 5, // "被举报", "该回复被举报"),

    NO_HINT = 6, // "不再提示", "不再提醒回复"),

    FREE_EDIT = 7, // "编辑", "编辑时间不受限制"),

    SELF_REPLY = 8, // "自回", "主题只能作者自己回复"),

    VERIFYING = 9, // "审核中", "正等待审核"),

    LOCKED = 10, // "锁定", "不允许编辑和回复"),

    PUNISHED = 11, // "处罚", "用户被处罚"),

    HAS_AUTO_TRANSLATE = 12, // "翻译", "有可以自动翻译的内容"),

    HAS_UPLOAD = 13, // "附件", "有上传文件"),

    VERIFYING_2 = 14, // "审核中", "正等待审核"),

    IS_SET = 15, // "合集", "这是一个合集入口"),

    IS_SET_THREAD = 16, // "合集主题", "这是一个合集内主题"),

    UNION_HIDDEN = 17, // "合并版面", "是否不在合并版面中显示"),

    ANONYMOUS = 18, // "匿名", "本条回复是匿名发出"),

    SHOW_ATTACHMENT = 19, // "镇楼图", "在主题列表中显示附件"),

    IS_FORUM = 21, // "版面", "这是一个到版面的镜像"),

    DOWN = 24, // "下沉", "回复不会让主题上浮/疑似取消热评且隐藏赞数"),

    UNKNOWN_25 = 25, // "未知25", "未知状态"),

    NOT_VERIFIED = 26, // "审核不通过", "经过了人工审核，且被判定为不通过"),

    UNKNOWN_FLAG_27 = 27, // "未知27", "未知标记"),
    UNKNOWN_FLAG_28 = 28, // "未知28", "未知标记"),
    UNKNOWN_FLAG_29 = 29, // "未知29", "未知标记"),
    UNKNOWN_FLAG_30 = 30, // "未知30", "未知标记"),
}

export const parseReplyStatus = (bit: number): ReplyStatus[] => {
    const status: ReplyStatus[] = []

    for (let i = 0; i < 32; i++) {
        if ((bit & Math.pow(2, i)) !== 0) {
            status.push(i as ReplyStatus)
        }
    }

    return status
}